Thì Kiến trúc Bộ lệnh (ISA) đóng vai trò là một mức độ trừu tượng cơ bản mức độ trừu tượng và một hợp đồng chính thức giữa phần mềm và phần cứng. Trong khi các ngôn ngữ cấp cao như C che giấu sự phức tạp, ISA lại tiết lộ trạng thái kiến trúc trạng thái kiến trúc—cấu hình chính xác của các thanh ghi và bộ nhớ của bộ xử lý.
1. Trạng thái Kiến trúc
Một CPU x86-64 xác định trạng thái của nó thông qua một số thành phần chính:
- Bộ đếm Chương trình (%rip): Lưu địa chỉ của lệnh tiếp theo.
- Tập thanh ghi Số nguyên: 16 thanh ghi tổng quát (ví dụ,
%rax,%rbx) lưu trữ giá trị 64 bit. - Các Mã Điều kiện: Cờ (ZF, SF, CF, OF) dùng để điều khiển luồng thực thi.
- Thanh ghi Vector: Ví dụ như thanh ghi YMM (256 bit) dùng cho các thao tác SIMD.
2. Trừu tượng về Bộ nhớ
Mã máy xem bộ nhớ như một mảng lớn mảng có địa chỉ theo byte. Mặc dù x86-64 hỗ trợ địa chỉ ảo 64 bit, nhưng các triển khai hiện tại thường sử dụng không gian địa chỉ 48 bit ($2^{48}$ byte). Chúng ta phân loại kích thước dữ liệu thành Từ (16 bit), Từ kép (32 bit), và Từ tứ (64 bit).
3. Tiến hóa và Tính tương thích
Được thúc đẩy bởi Luật Moore, Intel đã phát triển từ 8086 đến Core i7 Haswell. ISA đảm bảo tính tương thích ngược, cho phép mã máy cũ được thực thi trên phần cứng hiện đại đa lõi, siêu luồng.